Contemporary computers expose a bewildering array of networking settings to the user. For example, to use an 802.11 wireless network, a user is able choose between connecting directly to other computers (in an ad-hoc mode) and connecting to an access point of a larger network. If multiple networks are available, the user is also able to decide to which network to connect, and decide what security credentials and passwords to present to get access to that network. An encryption key may also have to be entered.
However, many users are not aware of the networks that are available to them, and/or are not capable of selecting a desired network. By way of example, many users are unaware that their computers are able to connect directly to other computers in an ad-hoc mode using wireless network adapters. Thus, two users that have laptops in close proximity to one another and who wish to exchange data often resort to non-networked data exchange, or limit themselves to communicating in areas where both connect to a wireless access point (e.g., a wireless hotspot) where they can send email.
Moreover, many of the networking choices involve tradeoffs that are somewhat difficult to explain to users. For example, when a user disconnects from a wireless access point that has Internet access, in order to connect to an ad-hoc network of computers, it means that the user loses e-mail access, because the ad-hoc network is not connected to the Internet.
In sum, changing networks requires knowledge of available networks, along with the ability to change networking settings, which is a task that is not easy for many computer users to learn or carry out. In fact, even sophisticated users that are aware of the available networks and the tradeoffs are burdened when frequently changing settings, by having to determine and enter the necessary information to connect to a network. What is needed is a better way for computer users to connect to networks.